home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 20 / Cream of the Crop 20 (Terry Blount) (1996).iso / os2 / xdsn217.zip / DOC / whatsnew.txt < prev    next >
Text File  |  1996-07-10  |  6KB  |  215 lines

  1. WHATSNEW.TXT                     Copyright (c) 1995,96 xTech Ltd
  2. ----------------------------------------------------------------
  3.  
  4.                  Native XDS-x86 OS/2 Edition
  5.                  ---------------------------
  6.                      v2.17 (pre-release)
  7.  
  8.                     Fixes And New Features
  9.  
  10.  
  11. Version 2.17
  12. ------------
  13.  
  14. This version is the last freely available before commercial release.
  15. The following changes were made since previous releases (2.10 and 2.12):
  16.  
  17. Compiler:
  18.  
  19.         A number of bugs fixed
  20.  
  21.         SYM-FILE VERSION CHANGED - RECOMPILATION IS NECESSARY
  22.  
  23.         Pentium instruction scheduling implemented
  24.  
  25.         A number of floating-point optimizations introduced
  26.  
  27.         Integer division by constant is now replaced with multiplication
  28.  
  29.         Long file names support (see the FATFS option)
  30.  
  31.         xc =m <file> now calls linker if <file> is a Modula-2 program
  32.         module or an Oberon-2 main module (option MAIN is on)
  33.  
  34.         The SYSTEM.REF procedure was added (the same as ADR, but returns
  35.         typized pointer.
  36.  
  37.         Compatibility rules for foreign procedures are relaxed further
  38.         (see User's Guide->Multilanluage Programming->Relaxation of
  39.         compatibility rules).
  40.  
  41.         Much more efficient (but still not ideal) code is generated 
  42.         for aggregate constants.
  43.  
  44.         Equations and environment variables may be used in redirections:
  45.         *.sym = $(XDSDIR)/sym
  46.  
  47.         Separate exception source for ASSERT added
  48.  
  49.         Compiler sets new equations:
  50.                 MODULE (name of the current module)
  51.                 FILE (name of the current file)
  52.  
  53.         Compiler exit code is now either 0 (ok) or 1 (error).
  54.  
  55.         SYSTEM.FILL is added
  56.  
  57.         <type>(<const>) is now equivalent to SYSTEM.CAST(<type>,<const>)
  58.  
  59.         VIO option introduced in xc.cfg
  60.  
  61.         BOOLEAN, SYSTEM.BOOL8 and SYSTEM.BOOL32 are much more compatible
  62.  
  63.         SYSTEM.M2ADR is available from Oberon-2
  64.  
  65.         CODENAME and DATANAME equations for segment names
  66.  
  67.         CPU486 is replaced with CPU and MINCPU
  68.  
  69.         It is now possible to declare/set equations in source text
  70.  
  71.         ALIGNMENT is an inlineable equation now
  72.  
  73.         DEF option is renamed to CHANGESYM to avoid conflicts
  74.  
  75. Library:
  76.  
  77.         Some bugs fixed
  78.  
  79.         Added module Printf
  80.  
  81.         ISO modules LowReal, LowLong are implemented
  82.  
  83.         ProgEnv.String and ProgEnv.StringLength are implemented
  84.  
  85.         TopSpeed-like library is partially implemented
  86.  
  87. IDE:
  88.  
  89.         Plenty of bugs fixed
  90.  
  91.         New concepts introduced: tools, workplaces, and stylesheets.
  92.         Refer to the on-line help for more information.
  93.  
  94.         A number of text editing features introduced (see Keys Help).
  95.  
  96.         A number of menu commands introduced (press F1 on menu items).
  97.  
  98.         Files are opened using redirections and lookups if typed without
  99.         path
  100.  
  101.         IDE maintains a list of source files which are either specified
  102.         by user or received from the compiler.
  103.  
  104.         Project file editor:
  105.                 a number of bug fixes
  106.                 user options/equations
  107.                 lookups
  108.  
  109. OS2.DEF:
  110.  
  111.         Some bugs fixed
  112.  
  113.         Formatting slightly improved
  114.  
  115.         Some pointer type parameters changed to VAR-parameters and
  116.         arrays according to an API call semantics.
  117.  
  118.         Some negative constants replaced with large positive
  119.  
  120. Doc:
  121.  
  122.         ISO Modula-2 Library Reference added
  123.  
  124.         ISO Modula-2 Lexis and Syntax added
  125.  
  126.         RegComp.Substitute description is corrected
  127.  
  128. Samples:
  129.  
  130.         The PMHello sample removed
  131.  
  132.         New samples:
  133.                 LinPack benchmark
  134.         FindProc IDE tool
  135.                 Mandelbrodt Set Explorer for PM
  136.  
  137.  
  138. Version 2.10
  139. ------------
  140.  
  141. This is the first product version of Native XDS for OS/2. After more
  142. then half a year of extensive testing we are happy to announce this
  143. product.
  144.  
  145. For the users of XDS v2.06 we list the differences between v2.06
  146. and v2.10. Note: there are no product versions such as v2.07,
  147. v2.08, v2.09. The version v2.07 was used internally and
  148. distributed as beta and demo version.
  149.  
  150. What is new in v2.10:
  151.  
  152.         1) Extended syntax of conditional expressions, e.g:
  153.  
  154.            <* IF defined cc & (cc = Watcom) THEN *>
  155.  
  156.            See "Configuring XDS" and "Conditional compilation".
  157.  
  158.         2) Relaxed compatibility rules are introduced for
  159.            parameters of "C" procedures. See "Multilanguage
  160.            programming".
  161.  
  162.         3) String literal may be used in a direct language
  163.            specification instead of numeric values:
  164.               "Oberon"  = 0
  165.               "Modula"  = 1
  166.               "C"       = 2
  167.               "Pascal"  = 5
  168.               "StdCall" = 7 (Win32 standard calling convention)
  169.               "SysCall" = 8 (OS/2 system calls)
  170.  
  171.         4) new equations
  172.               COMPILERHEAP   - defines compiler heap limit
  173.               COMPILERTHRES  - defines compiler threshold
  174.  
  175.         5) New clause in the ERRFMT equation - errno (error
  176.         number).
  177.  
  178.         6) new option M2UNPACKTYPES - for Windows interface
  179.  
  180.         7) new ALIGNMENET option
  181.  
  182.         8) equation declaration syntax is introduced:
  183.            -xxx!value
  184.  
  185.         9) Make does not use dependency on a project file.
  186.  
  187.  
  188.        10) New directives may be used in configuration, redirection
  189.            project and template files:
  190.  
  191.            !if expr then
  192.            !elsif expr then
  193.            !else
  194.            !end
  195.  
  196.            !message expr
  197.  
  198.            expr = simple [ ("=" | "#" | "<" | ">") simple ]
  199.            simple = term { "+" | "OR" term }
  200.            term = factor { "AND" factor }
  201.            factor = "(" expr ")"| quoted_string
  202.                   | "NOT" factor | "DEFINED" ident | ident
  203.            ident = option | equation
  204.  
  205.        11) In all system files:
  206.  
  207.             \ at the end of line - line continuation.
  208.  
  209.             $! - denotes the directory name of this file:
  210.                *.sym = $!/sym;
  211.  
  212.        12) new template syntax (See "Template files").
  213.  
  214.                          [end of document]
  215.